using System.Collections.Generic;
using GoldenBicycleCompany.Core;
using GoldenBicycleCompany.ApplicationServices.ViewModels;
using GoldenBicycleCompany.Core.QueryDtos;
 

namespace GoldenBicycleCompany.ApplicationServices
{
    public interface ILocationManagementService
    {
        LocationFormViewModel CreateFormViewModel();
        LocationFormViewModel CreateFormViewModelFor(int locationId);
        LocationFormViewModel CreateFormViewModelFor(Location location);
        Location Get(int id);
        IList<Location> GetAll();
        IList<LocationDto> GetLocationSummaries();
        ActionConfirmation SaveOrUpdate(Location location);
        ActionConfirmation UpdateWith(Location locationFromForm, int idOfLocationToUpdate);
        ActionConfirmation Delete(int id);
    }
}
